# 协程
import time

def func():
    print("1111")
    # 当前程序阻塞 3 秒
    # input()、requests.get() 等等 IO 操作也是阻塞代码
    time.sleep(3)
    print('2222')

if __name__ == '__main__':
    func()

# 尽量避免阻塞 —— 使用协程（单线程条件下）
# 协程：当程序遇见 IO 操作时，可以选择性地将 CPU 切换到其他任务
# 微观：是任务之间的切换（切换条件一般是遇到 IO 操作）
# 宏观：多个任务同时执行